home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / X11 / xarchie-2.0.9 / INSTALL < prev    next >
Text File  |  1995-06-18  |  7KB  |  162 lines

  1.           Installation Instructions for XARCHIE 2.0
  2.                    
  3.           George Ferguson, ferguson@cs.rochester.edu
  4.                    
  5.                  23 Apr 1993
  6.  
  7.  
  8. Please see the file README and the manpage regarding reporting problems.
  9. Please read the file PROBLEMS before reporting anything.
  10. -> If you don't have imake/xmkmf, see item (A) below.
  11.  
  12. 1. Xarchie comes with a GNU autoconf-generated configure script that
  13.    will hopefully configure the distribution for your system
  14.    automatically. Complete generic details for running the script
  15.    are contained in the file INSTALL.GNU. Basically, you should run
  16.    the script by doing
  17.     % sh ./configure
  18.    to create the config.h file. This file is used both by C files and
  19.    by the Imakefile. You can edit it by hand to change anything that
  20.    the script got wrong (see (B), below).
  21.  
  22.    Note: If you use "strange" compiler (that isn't cc or gcc), you
  23.    should set the environment variable CC appropriately before running
  24.    configure. Otherwise it will get things that require compilation
  25.    wrong.
  26.  
  27.    Note: Using the configure options like "--prefix" will probably
  28.    set the install directories properly. See item (C) below.
  29.  
  30.    If running configure yields sed errors, see the file PROBLEMS.
  31.  
  32. 2. Execute
  33.        % xmkmf
  34.    to create the Makefile. Alternatively,
  35.         % imake -DUseInstalled -I/usr/local/lib/X11/config
  36.    where the directory given with "-I" is where your Imake.tmpl and
  37.    Imake.rules live. If you have neither xmkmf nor imake, see (A)
  38.    below. 
  39.  
  40. 3. Unless you commented out the use of both the MultiList and
  41.    FileChooser widgets in the Imakefile (see (C), below), execute
  42.     % make Makefiles
  43.    to run imake in the FWF/* subdirectories. Alternately, run it
  44.    (or xmkmf) in the subdirectories by hand.
  45.  
  46. 4. Execute
  47.     % make depend
  48.    to add the dependencies to the Makefile. This is only necessary if
  49.    you change any of the files, including the app-defaults file Xarchie.ad
  50.    or the manpage. Note that if you change Xarchie.ad you will need
  51.    "ad2c" and if you change the manpage you will need to be able to run
  52.    the shell scripts "help-text[12].sh".
  53.  
  54. 5. Make the package using
  55.     % make
  56.    You can try xarchie without installing it, provided that the
  57.    fallback resources have been compiled in using ad2c.
  58.  
  59.    To experiment with different resource settings without recompiling,
  60.    edit Xarchie.ad and then do:
  61.     % ln -s Xarchie.ad Xarchie
  62.     % setenv XAPPLRESDIR $cwd
  63.    If you have a previous version of xarchie installed, you will need
  64.    to do
  65.     % setenv XFILESEARCHPATH $cwd
  66.    to prevent the old app-defaults (in the standard place, presumably,
  67.    since you installed them) from conflicting. Your mileage will vary
  68.    on this depending on your version of X.
  69.  
  70. 6. Install the package using
  71.     % make install install.man
  72.    This will install the xarchie executable, the app-defaults file,
  73.    and the manpage.
  74.  
  75. NOTE: The Imakefile provides the target "World", which does the following:
  76.     % make -n World
  77.     make Makefile
  78.     make Makefiles
  79.     make depend
  80.     make clean
  81.     make
  82.  
  83.  
  84. A. If you don't have imake/xmkmf, you'll have to work with the file
  85.    Makefile.dst. You should copy Makefile.dst to Makefile, and then
  86.    edit it to set the definitions of XINCS, XLIBS, etc., to reflect
  87.    the peculiarities of your X installation. Subdirectories also have
  88.    Makefile.dst files, which you will have to rename to Makefile. You
  89.    can do this with the command:
  90.     % make Makefiles
  91.    or
  92.     % make -f Makefile.dst Makefiles
  93.    if you didn't copy Makefile.dst to Makefile.
  94.  
  95.    After that, try simply "make" (or "make -f Makefile.dst" if you
  96.    didn't copy it to Makefile). If there are problems, go through
  97.    the Makefile using the instructions in item (C) below (for
  98.    Imakefiles) as a guide. Most things are similar. NOTE: Without,
  99.    imake, Makefile.dst cannot use C preprocessor directives to
  100.    configure itself based on the config.h file created by the
  101.    configure script. You will have to adjust definitions accordingly,
  102.    using the values in config.h (for your system!) as a guide.
  103.  
  104. B. Running the configure script will generate a file "config.h" from
  105.    the template "config.h.in". It may not get everything right for
  106.    your system. If it doesn't, you'll have to edit "config.h" and
  107.    make the required changes. Each definition has a short comment
  108.    indicating the conditions under which it should be defined.
  109.  
  110.    Be sure to run xmkmf/imake again after changing it.
  111.  
  112.    One fairly common problem is that configure will decide that you
  113.    need to link with -lresolv and define NEED_LRESOLV in config.h.
  114.    This happens when the test program resolv.c either doesn't compile
  115.    or compiles but doesn't work properly. Normally, this means that
  116.    your system requires linking with libresolv.a to force DNS
  117.    nameserver lookups. If you don't have /usr/lib/libresolv.a (or some
  118.    local variant), or if resolv.c compiles and runs properly, you
  119.    shouldn't define NEED_LRESOLV.
  120.  
  121. C. The Imakefile uses definitions in "config.h" to setup a Makefile
  122.    that is correct for your system. In addition, there are several
  123.    parameters that you can change by editing the Imakefile directly,
  124.    although you shouldn't need to do so.
  125.  
  126.    Note that the Imakefile uses the notation "/**/#" for comments --
  127.    the "/**/" is for cpp (so the "#" isn't interpreted as a
  128.    directive), the "#" is for make. You need to delete both parts to
  129.    "uncomment" a definition, unless it is explicitly indicated that
  130.    the "#" should be left for cpp (as in "#define").
  131.  
  132.    o Set BINDIR, LIBDIR, and MANDIR if needed to change where the
  133.      stuff goes on "make install" and "make install.man".
  134.    o Xarchie uses the "ad2c" program to compile-in a set of default
  135.      resources. You should get a copy of ad2c in this distribution,
  136.      otherwise you may have to adjust the definition of AD2C. To not
  137.      compile-in any fallback resources, comment out the #include of
  138.      Xarchie.ad.h in file xarchie.c (see comments there).
  139.    o Change CDEBUGFLAGS as appropriate to override the default
  140.      debugging or optimization levels. You might also want to add a
  141.      definition of CC, or you can type "make CC=gcc", for example.
  142.    o By default, xarchie compiles the manpage into a set of C strings
  143.      that are used for the Help browser. If you simply can't handle
  144.      all that string data, comment out all the HELP definitions.
  145.    o If you understand and want to trace at the Prospero level,
  146.      uncomment the definition of PDEBUG.
  147.    o By default, xarchie uses some widgets from the Free Widget
  148.      Foundation. These can cause problems with some versions of X that
  149.      get upset about widget subclassing.
  150.      - The MultiList widget allows multiple selections in the browser.
  151.        To *not* use it, comment out the "#define MultiList" line (that
  152.        is, add "/**/" at the front or delete it).
  153.      - The FileChooser widgets allows you to use a hierarchical
  154.        filesystem browser for specifying filenames. It also uses
  155.        directory reading routines that may have portability problems.
  156.        To *not* use it, comment out the "#define FileSelector" line.
  157.  
  158.    Finally, you may want to change defaults in Xarchie.ad. In
  159.    particular, you should set the default archie host as appropriate
  160.    for your location, and possibly the hostWeights also. See the man
  161.    page for details, and see the Imakefile regarding "ad2c".
  162.